package Patterns;

import java.util.*;

public class Pattern 
{
	//This class represents patterns
	
	private int length;
	private int varNumber;
	private ArrayList<Integer> varOrder;
	private int varDistance;
	private int[] occurrenceVector;

	public Pattern()
	{
		
	}
	
	public int[] getOccurrenceVector() 
	{
		return occurrenceVector;
	}

	public void setOccurrenceVector(int[] occurrenceVector) 
	{
		this.occurrenceVector = occurrenceVector;
	}

	public String toString() 
	{
		if (length == 0) 
		{
			return "E";
		}
		String name = "";
		for (int i = 0; i < length; i++) 
		{
			name = name + " " + varOrder.get(i);
		}
		name = name.substring(1, name.length());
		return name;
	}

	public void swap() 
	{
		ArrayList<Integer> temp = new ArrayList<Integer>();
		for (int i = 0; i < length; i++) 
		{
			temp.add(varOrder.get(varOrder.size() - 1));
			varOrder.remove(varOrder.size() - 1);
		}

		varOrder = temp;
	}

	public int getVarDistance() {
		return varDistance;
	}

	public void setVarDistance(int varDistance) {
		this.varDistance = varDistance;
	}

	public int getLength() {
		return length;
	}

	public void setLength(int length) {
		this.length = length;
	}

	public int getVarNumber() {
		return varNumber;
	}

	public void setVarNumber(int varNumber) {
		this.varNumber = varNumber;
	}

	public ArrayList<Integer> getVarOrder() {
		return varOrder;
	}

	public void setVarOrder(ArrayList<Integer> varOrder) {
		this.varOrder = varOrder;
	}

}
